package com.ragdollcat.thirdaicodegenerate.model.vo.app;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * 单个文件内容的返回DTO（适配前端展示需求）
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class FileContentVO {
    // 状态标识：true-成功读取，false-失败
    private boolean success;

    // 文件元数据（前端展示和处理用）
    private String fileName;      // 完整文件名（如 "index.html"）
    private String fileExtension; // 文件后缀（如 "html"，无后缀则为""）
    private String filePath;      // 文件在服务器的相对路径（可选，用于前端定位）

    // 文件内容（文本类文件用字符串存储，二进制文件可扩展为byte[]，但代码文件一般是文本）
    private String content;       // 读取到的文件内容（成功时非空）

    // 错误信息（失败时非空，如"文件不存在"、"无读取权限"）
    private String errorMessage;
}